package com.man.pojo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

/**
 * @CallsName: User
 * 实体类
 */
@Data
public class User {
    @NotNull//限制这个ID必须有数值
    private Integer id;//主键ID
    private String username;//用户名
    //    @JsonIgnore//让springmvc把当前对象转换成Json格式的时候，忽略该字段
    private String password;//密码
    /*
        @NotEmpty//限制这个字段必须有值
        @Pattern(regexp = "^\\S{1,10}$")//限制这个字段长度在1到10之间，并且不能有空格
        private String nickname;//昵称
    */
    @NotEmpty//限制这个字段必须有值
    @Email//限制这个字段必须是一个邮箱格式
    private String email;//邮箱
/*
    private String userPic;//用户头像地址
*/

    private LocalDateTime createTime;//创建时间

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;//更新时间
    // Method to convert LocalDateTime to String

}
